The present invention is directed towards method and apparatus for performing local color correction.
Color tone reproduction is an important aspect of image processing. Historically, tone correction has been performed on a global basis for a given image. Global tone-correction operations traditionally apply the same correction to all the pixels of an image. In other words, they are one-dimensional operations that map each input value to one and only one output value.
Global tone correction results in a reasonable correction when the dynamic range of the original image is fairly limited. When the original image has a large dynamic range, it becomes increasingly difficult to perform a global tone correction that will accommodate both shadow and highlight detail.
Consequently, several local tone-correction operations have been proposed for processing images with high dynamic range. A local tone-correction operation typically maps one input value to different output values, depending on the values of the neighboring pixels. This allows for simultaneous shadow and highlight adjustments.
Prior art local-tone correction techniques include manual operations, such as dodging and burning, and automated techniques, such as histogram equalization, piece-wise gamma correction, and Retinex algorithms. These techniques have shown considerable promise. Some of these techniques, however, are quite complex and time consuming. Others do not consistently provide acceptable quality. Therefore, there is a need in the art for a local tone correction technique that is simple and fast, and that produces high quality images.
The invention is directed towards method and apparatus for performing local color correction. One embodiment of the invention is a two-part process. The first part derives an image mask from an input image. In some embodiments, the mask is an inverted, low-pass filtered, monochrome version of the input image. The second part combines the derived mask with the input image through a non-linear operation. In some embodiments, the combination operation is a variable exponential function that has the mask values as part of its exponent and the pixel values as part of its base.